if exists (select 1 from sysobjects where name = 'set_arbeitstage' and type = 'P')
begin
   drop procedure set_arbeitstage
   print 'Procedure: set_arbeitstage deleted ...'
end
go
-- setzt anzahl tage pro monat fest
create procedure set_arbeitstage(
  @jahr          int          = 1900,
  @Name          varchar(60)  = 'januar',
  @typwert       int          = 1,
  @Von           varchar(8)   = '20070101',
  @Bis           varchar(8)   = '20070131',
  @Typ           int          = 1, -- 1: Monat   2: Feiertag
  @Tage          decimal(5,2) = 23,   --Anzahl tage im monat an denen gearbeitet wird / anzahl bezahlte tage pro feiertag 
  @mandid        char(2)      = 'li',
  @retval        int          = 0 output
)
as
begin

  set nocount on

  declare @jahrid  int
  declare @datevon datetime
  declare @datebis datetime

  select @jahrid = JahrID from PlanungsJahr where PlanungsJahr.Jahr = @jahr
  select @datevon = convert(datetime, @Von, 112)
  select @datebis = convert(datetime, @Bis, 112)
  
  if @mandid = '' select top 1 @mandid = mandid from mandant where active = 1

  insert into ArbeitsTage (JahrID,Name,typwert,Von,Bis,typ,Tage,mandid) values (@jahrid,@Name,@typwert,@datevon,@datebis,@Typ,@Tage,@mandid)
  
  select @retval = ATID from ArbeitsTage where JahrID = @jahrid and Name = @Name and Von = @Von and typ = @Typ

end
go
print 'Procedure: set_arbeitstage done ...'
go
grant exec on set_arbeitstage to prsadmins with grant option
go
grant exec on set_arbeitstage to prsusers
go

